package main

import (
	"fmt"
	"strings"
)

/**
此函数在给定分隔符的每个实例之后将字符串拆分为所有子字符串，并返回包含这些子字符串的切片。

语法：

func SplitAfterN(str, sep string, m int) []string
在这里，str是字符串，sep是分隔符，m用于查找要返回的子字符串数。在这里，
如果m> 0，那么它最多返回m个子字符串，并且最后一个字符串子字符串不会拆分。
如果m == 0，则它将返回nil。如果m <0，则它将返回所有子字符串。
*/

func main() {

	//创建和初始化字符串
	str1 := "Welcome, to the, online portal, of nhooo"
	str2 := "My dog name is Dollar"
	str3 := "I like to play Ludo"

	//显示字符串
	fmt.Println("String 1: ", str1)
	fmt.Println("String 2: ", str2)
	fmt.Println("String 3: ", str3)

	//拆分给定的字符串
	//使用SplitAfterN()函数
	res1 := strings.SplitAfterN(str1, ",", 2)
	res2 := strings.SplitAfterN(str2, "", 4)
	res3 := strings.SplitAfterN(str3, "!", 1)
	res4 := strings.SplitAfterN("", "nhooo, geeks", 3)

	//显示结果
	fmt.Println("\nResult 1: ", res1)
	fmt.Println("Result 2: ", res2)
	fmt.Println("Result 3: ", res3)
	fmt.Println("Result 4: ", res4)

}
